<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:f="http://java.sun.com/jsf/core"
      xmlns:h="http://java.sun.com/jsf/html"
      xmlns:composite="http://java.sun.com/jsf/composite"
      xmlns:p="http://primefaces.prime.com.tr/ui"
      xmlns:c="http://java.sun.com/jsp/jstl/core">

    <!-- INTERFACE -->
    <composite:interface>
        <composite:attribute name="seleccion" required="false" default="false"/>
        <composite:attribute name="objetoSeleccion" default="#{null}" required="false" type="entidades.Presupuesto"/>
        <composite:attribute name="seleccionNavegable" default="false" required="false"/>
        <composite:attribute name="paginaSiguiente" />
        <composite:attribute name="cliente" type="entidades.Cliente" />
        <composite:attribute name="listarSoloNoUsados" default="false" />
        <composite:attribute name="filtrarPorCliente" default="false" />
    </composite:interface>

    <composite:implementation>
        <c:if test="#{cc.attrs.seleccion}">
            <c:if test="#{cc.attrs.filtrarPorCliente == true}">
                <c:if test="#{cc.attrs.listarSoloNoUsados == true}">
                    <p:dataTable var="fila"
                                 value="#{vistaPresupuesto.devolverPresupuestosClienteVigentesNoUsados(cc.attrs.cliente)}"
                                 selection="#{cc.attrs.objetoSeleccion}"
                                 paginator="true"
                                 rows="10"
                                 selectionMode="single"
                                 nextPageLinkLabel="Siguiente >"
                                 lastPageLinkLabel="Último >>"
                                 previousPageLinkLabel="&lt; Anterior"
                                 firstPageLinkLabel="&lt;&lt; Primero"
                                 emptyMessage="No hay registros cargados"
                                 errorMessage="Hubo un error cargando los datos">
                        <p:column sortBy="#{fila.numero}" filterBy="#{fila.numero}" resizable="true">
                            <f:facet name="header">
                                <h:outputText value="Número" />
                            </f:facet>
                            <h:outputText value="#{fila.numero}" />
                        </p:column>
                        <p:column sortBy="#{fila.entidad.nombre}" filterBy="#{fila.entidad.nombre}" resizable="true">
                            <f:facet name="header">
                                <h:outputText value="Entidad" />
                            </f:facet>
                            <h:outputText value="#{fila.entidad.nombre}" />
                        </p:column>
                        <p:column filterBy="#{fila.fechaCreacion}">
                            <f:facet name="header">
                                <h:outputText value="Fecha" />
                            </f:facet>
                            <h:outputText value="#{fila.fechaCreacion}">
                                <f:convertDateTime type="date" />
                            </h:outputText>
                        </p:column>
                        <p:column filterBy="#{fila.fechaVigencia}">
                            <f:facet name="header">
                                <h:outputText value="Vigencia" />
                            </f:facet>
                            <h:outputText value="#{fila.fechaVigencia}" >
                                <f:convertDateTime type="date" />
                            </h:outputText>
                        </p:column>
                    </p:dataTable>
                </c:if>
                <c:if test="#{cc.attrs.listarSoloNoUsados == false}">
                    <p:dataTable var="fila"
                                 value="#{vistaPresupuesto.devolverPresupuestosCliente(cc.attrs.cliente)}"
                                 selection="#{cc.attrs.objetoSeleccion}"
                                 paginator="true"
                                 rows="10"
                                 selectionMode="single"
                                 nextPageLinkLabel="Siguiente >"
                                 lastPageLinkLabel="Último >>"
                                 previousPageLinkLabel="&lt; Anterior"
                                 firstPageLinkLabel="&lt;&lt; Primero"
                                 emptyMessage="No hay registros cargados"
                                 errorMessage="Hubo un error cargando los datos">
                        <p:column sortBy="#{fila.numero}" filterBy="#{fila.numero}" resizable="true">
                            <f:facet name="header">
                                <h:outputText value="Número" />
                            </f:facet>
                            <h:outputText value="#{fila.numero}" />
                        </p:column>
                        <p:column sortBy="#{fila.entidad.nombre}" filterBy="#{fila.entidad.nombre}" resizable="true">
                            <f:facet name="header">
                                <h:outputText value="Entidad" />
                            </f:facet>
                            <h:outputText value="#{fila.entidad.nombre}" />
                        </p:column>
                        <p:column filterBy="#{fila.fechaCreacion}">
                            <f:facet name="header">
                                <h:outputText value="Fecha" />
                            </f:facet>
                            <h:outputText value="#{fila.fechaCreacion}">
                                <f:convertDateTime type="date" />
                            </h:outputText>
                        </p:column>
                        <p:column filterBy="#{fila.fechaVigencia}">
                            <f:facet name="header">
                                <h:outputText value="Vigencia" />
                            </f:facet>
                            <h:outputText value="#{fila.fechaVigencia}" >
                                <f:convertDateTime type="date" />
                            </h:outputText>
                        </p:column>
                    </p:dataTable>
                </c:if>
            </c:if>
            <c:if test="#{cc.attrs.filtrarPorCliente == false}">
                <c:if test="#{cc.attrs.listarSoloNoUsados == false}">
                    <p:dataTable var="fila"
                                 value="#{vistaPresupuesto.devolverPresupuestos()}"
                                 selection="#{cc.attrs.objetoSeleccion}"
                                 paginator="true"
                                 rows="10"
                                 selectionMode="single"
                                 nextPageLinkLabel="Siguiente >"
                                 lastPageLinkLabel="Último >>"
                                 previousPageLinkLabel="&lt; Anterior"
                                 firstPageLinkLabel="&lt;&lt; Primero"
                                 emptyMessage="No hay registros cargados"
                                 errorMessage="Hubo un error cargando los datos">
                        <p:column sortBy="#{fila.numero}" filterBy="#{fila.numero}" resizable="true">
                            <f:facet name="header">
                                <h:outputText value="Número" />
                            </f:facet>
                            <h:outputText value="#{fila.numero}" />
                        </p:column>
                        <p:column sortBy="#{fila.entidad.nombre}" filterBy="#{fila.entidad.nombre}" resizable="true">
                            <f:facet name="header">
                                <h:outputText value="Entidad" />
                            </f:facet>
                            <h:outputText value="#{fila.entidad.nombre}" />
                        </p:column>
                        <p:column filterBy="#{fila.fechaCreacion}">
                            <f:facet name="header">
                                <h:outputText value="Fecha" />
                            </f:facet>
                            <h:outputText value="#{fila.fechaCreacion}">
                                <f:convertDateTime type="date" />
                            </h:outputText>
                        </p:column>
                        <p:column filterBy="#{fila.fechaVigencia}">
                            <f:facet name="header">
                                <h:outputText value="Vigencia" />
                            </f:facet>
                            <h:outputText value="#{fila.fechaVigencia}" >
                                <f:convertDateTime type="date" />
                            </h:outputText>
                        </p:column>
                    </p:dataTable>
                </c:if>
                <c:if test="#{cc.attrs.listarSoloNoUsados == true}">
                    <p:dataTable var="fila"
                                 value="#{vistaPresupuesto.devolverPresupuestosNoUsados()}"
                                 selection="#{cc.attrs.objetoSeleccion}"
                                 paginator="true"
                                 rows="10"
                                 selectionMode="single"
                                 nextPageLinkLabel="Siguiente >"
                                 lastPageLinkLabel="Último >>"
                                 previousPageLinkLabel="&lt; Anterior"
                                 firstPageLinkLabel="&lt;&lt; Primero"
                                 emptyMessage="No hay registros cargados"
                                 errorMessage="Hubo un error cargando los datos">
                        <p:column sortBy="#{fila.numero}" filterBy="#{fila.numero}" resizable="true">
                            <f:facet name="header">
                                <h:outputText value="Número" />
                            </f:facet>
                            <h:outputText value="#{fila.numero}" />
                        </p:column>
                        <p:column sortBy="#{fila.entidad.nombre}" filterBy="#{fila.entidad.nombre}" resizable="true">
                            <f:facet name="header">
                                <h:outputText value="Entidad" />
                            </f:facet>
                            <h:outputText value="#{fila.entidad.nombre}" />
                        </p:column>
                        <p:column filterBy="#{fila.fechaCreacion}">
                            <f:facet name="header">
                                <h:outputText value="Fecha" />
                            </f:facet>
                            <h:outputText value="#{fila.fechaCreacion}">
                                <f:convertDateTime type="date" />
                            </h:outputText>
                        </p:column>
                        <p:column filterBy="#{fila.fechaVigencia}">
                            <f:facet name="header">
                                <h:outputText value="Vigencia" />
                            </f:facet>
                            <h:outputText value="#{fila.fechaVigencia}" >
                                <f:convertDateTime type="date" />
                            </h:outputText>
                        </p:column>
                    </p:dataTable>
                </c:if>
            </c:if>
        </c:if>
        <c:if test="#{cc.attrs.seleccionNavegable}">
            <c:if test="#{cc.attrs.filtrarPorCliente == true}">
                <c:if test="#{cc.attrs.listarSoloNoUsados == true}">
                    <p:dataTable var="fila"
                                 value="#{vistaPresupuesto.devolverPresupuestosClienteVigentesNoUsados(cc.attrs.cliente)}"
                                 selection="#{cc.attrs.objetoSeleccion}"
                                 onRowSelectUpdate="@none"
                                 onRowSelectComplete="location='#{cc.attrs.paginaSiguiente}'"
                                 paginator="true"
                                 rows="10"
                                 selectionMode="single"
                                 nextPageLinkLabel="Siguiente >"
                                 lastPageLinkLabel="Último >>"
                                 previousPageLinkLabel="&lt; Anterior"
                                 firstPageLinkLabel="&lt;&lt; Primero"
                                 emptyMessage="No hay registros cargados"
                                 errorMessage="Hubo un error cargando los datos">
                        <p:column sortBy="#{fila.numero}" filterBy="#{fila.numero}" resizable="true">
                            <f:facet name="header">
                                <h:outputText value="Números" />
                            </f:facet>
                            <h:outputText value="#{fila.numero}" />
                        </p:column>
                        <p:column sortBy="#{fila.entidad.nombre}" filterBy="#{fila.entidad.nombre}" resizable="true">
                            <f:facet name="header">
                                <h:outputText value="Entidad" />
                            </f:facet>
                            <h:outputText value="#{fila.entidad.nombre}" />
                        </p:column>
                        <p:column filterBy="#{fila.fechaCreacion}">
                            <f:facet name="header">
                                <h:outputText value="Fecha" />
                            </f:facet>
                            <h:outputText value="#{fila.fechaCreacion}">
                                <f:convertDateTime type="date" />
                            </h:outputText>
                        </p:column>
                        <p:column filterBy="#{fila.fechaVigencia}">
                            <f:facet name="header">
                                <h:outputText value="Vigencia" />
                            </f:facet>
                            <h:outputText value="#{fila.fechaVigencia}" >
                                <f:convertDateTime type="date" />
                            </h:outputText>
                        </p:column>
                    </p:dataTable>
                </c:if>
                <c:if test="#{cc.attrs.listarSoloNoUsados == false}">
                    <p:dataTable var="fila"
                                 value="#{vistaPresupuesto.devolverPresupuestosCliente(cc.attrs.cliente)}"
                                 selection="#{cc.attrs.objetoSeleccion}"
                                 onRowSelectUpdate="@none"
                                 onRowSelectComplete="location='#{cc.attrs.paginaSiguiente}'"
                                 paginator="true"
                                 rows="10"
                                 selectionMode="single"
                                 nextPageLinkLabel="Siguiente >"
                                 lastPageLinkLabel="Último >>"
                                 previousPageLinkLabel="&lt; Anterior"
                                 firstPageLinkLabel="&lt;&lt; Primero"
                                 emptyMessage="No hay registros cargados"
                                 errorMessage="Hubo un error cargando los datos">
                        <p:column sortBy="#{fila.numero}" filterBy="#{fila.numero}" resizable="true">
                            <f:facet name="header">
                                <h:outputText value="Números" />
                            </f:facet>
                            <h:outputText value="#{fila.numero}" />
                        </p:column>
                        <p:column sortBy="#{fila.entidad.nombre}" filterBy="#{fila.entidad.nombre}" resizable="true">
                            <f:facet name="header">
                                <h:outputText value="Entidad" />
                            </f:facet>
                            <h:outputText value="#{fila.entidad.nombre}" />
                        </p:column>
                        <p:column filterBy="#{fila.fechaCreacion}">
                            <f:facet name="header">
                                <h:outputText value="Fecha" />
                            </f:facet>
                            <h:outputText value="#{fila.fechaCreacion}">
                                <f:convertDateTime type="date" />
                            </h:outputText>
                        </p:column>
                        <p:column filterBy="#{fila.fechaVigencia}">
                            <f:facet name="header">
                                <h:outputText value="Vigencia" />
                            </f:facet>
                            <h:outputText value="#{fila.fechaVigencia}" >
                                <f:convertDateTime type="date" />
                            </h:outputText>
                        </p:column>
                    </p:dataTable>
                </c:if>
            </c:if>
            <c:if test="#{cc.attrs.filtrarPorCliente == false}">
                <c:if test="#{cc.attrs.listarSoloNoUsados == true}">
                    <p:dataTable var="fila"
                                 value="#{vistaPresupuesto.devolverPresupuestosNoUsados()}"
                                 selection="#{cc.attrs.objetoSeleccion}"
                                 onRowSelectUpdate="@none"
                                 onRowSelectComplete="location='#{cc.attrs.paginaSiguiente}'"
                                 paginator="true"
                                 rows="10"
                                 selectionMode="single"
                                 nextPageLinkLabel="Siguiente >"
                                 lastPageLinkLabel="Último >>"
                                 previousPageLinkLabel="&lt; Anterior"
                                 firstPageLinkLabel="&lt;&lt; Primero"
                                 emptyMessage="No hay registros cargados"
                                 errorMessage="Hubo un error cargando los datos">
                        <p:column sortBy="#{fila.numero}" filterBy="#{fila.numero}" resizable="true">
                            <f:facet name="header">
                                <h:outputText value="Números" />
                            </f:facet>
                            <h:outputText value="#{fila.numero}" />
                        </p:column>
                        <p:column sortBy="#{fila.entidad.nombre}" filterBy="#{fila.entidad.nombre}" resizable="true">
                            <f:facet name="header">
                                <h:outputText value="Entidad" />
                            </f:facet>
                            <h:outputText value="#{fila.entidad.nombre}" />
                        </p:column>
                        <p:column filterBy="#{fila.fechaCreacion}">
                            <f:facet name="header">
                                <h:outputText value="Fecha" />
                            </f:facet>
                            <h:outputText value="#{fila.fechaCreacion}">
                                <f:convertDateTime type="date" />
                            </h:outputText>
                        </p:column>
                        <p:column filterBy="#{fila.fechaVigencia}">
                            <f:facet name="header">
                                <h:outputText value="Vigencia" />
                            </f:facet>
                            <h:outputText value="#{fila.fechaVigencia}" >
                                <f:convertDateTime type="date" />
                            </h:outputText>
                        </p:column>
                    </p:dataTable>
                </c:if>
                <c:if test="#{cc.attrs.listarSoloNoUsados == false}">
                    <p:dataTable var="fila"
                                 value="#{vistaPresupuesto.devolverPresupuestos()}"
                                 selection="#{cc.attrs.objetoSeleccion}"
                                 onRowSelectUpdate="@none"
                                 onRowSelectComplete="location='#{cc.attrs.paginaSiguiente}'"
                                 paginator="true"
                                 rows="10"
                                 selectionMode="single"
                                 nextPageLinkLabel="Siguiente >"
                                 lastPageLinkLabel="Último >>"
                                 previousPageLinkLabel="&lt; Anterior"
                                 firstPageLinkLabel="&lt;&lt; Primero"
                                 emptyMessage="No hay registros cargados"
                                 errorMessage="Hubo un error cargando los datos">
                        <p:column sortBy="#{fila.numero}" filterBy="#{fila.numero}" resizable="true">
                            <f:facet name="header">
                                <h:outputText value="Números" />
                            </f:facet>
                            <h:outputText value="#{fila.numero}" />
                        </p:column>
                        <p:column sortBy="#{fila.entidad.nombre}" filterBy="#{fila.entidad.nombre}" resizable="true">
                            <f:facet name="header">
                                <h:outputText value="Entidad" />
                            </f:facet>
                            <h:outputText value="#{fila.entidad.nombre}" />
                        </p:column>
                        <p:column filterBy="#{fila.fechaCreacion}">
                            <f:facet name="header">
                                <h:outputText value="Fecha" />
                            </f:facet>
                            <h:outputText value="#{fila.fechaCreacion}">
                                <f:convertDateTime type="date" />
                            </h:outputText>
                        </p:column>
                        <p:column filterBy="#{fila.fechaVigencia}">
                            <f:facet name="header">
                                <h:outputText value="Vigencia" />
                            </f:facet>
                            <h:outputText value="#{fila.fechaVigencia}" >
                                <f:convertDateTime type="date" />
                            </h:outputText>
                        </p:column>
                    </p:dataTable>
                </c:if>
            </c:if>
        </c:if>
        <c:if test="#{cc.attrs.seleccion == false and cc.attrs.seleccionNavegable == false}">
            <c:if test="#{cc.attrs.filtrarPorCliente == true}">
                <c:if test="#{cc.attrs.listarSoloNoUsados == true}">
                    <p:dataTable var="fila"
                                 value="#{vistaPresupuesto.devolverPresupuestosClienteVigentesNoUsados(cc.attrs.cliente)}"
                                 paginator="true"
                                 rows="10"
                                 nextPageLinkLabel="Siguiente >"
                                 lastPageLinkLabel="Último >>"
                                 previousPageLinkLabel="&lt; Anterior"
                                 firstPageLinkLabel="&lt;&lt; Primero"
                                 emptyMessage="No hay registros cargados"
                                 errorMessage="Hubo un error cargando los datos">
                        <p:column sortBy="#{fila.numero}" filterBy="#{fila.numero}" resizable="true">
                            <f:facet name="header">
                                <h:outputText value="Número" />
                            </f:facet>
                            <h:outputText value="#{fila.numero}" />
                        </p:column>
                        <p:column sortBy="#{fila.entidad.nombre}" filterBy="#{fila.entidad.nombre}" resizable="true">
                            <f:facet name="header">
                                <h:outputText value="Entidad" />
                            </f:facet>
                            <h:outputText value="#{fila.entidad.nombre}" />
                        </p:column>
                        <p:column filterBy="#{fila.fechaCreacion}">
                            <f:facet name="header">
                                <h:outputText value="Fecha" />
                            </f:facet>
                            <h:outputText value="#{fila.fechaCreacion}">
                                <f:convertDateTime type="date" />
                            </h:outputText>
                        </p:column>
                        <p:column filterBy="#{fila.fechaVigencia}">
                            <f:facet name="header">
                                <h:outputText value="Vigencia" />
                            </f:facet>
                            <h:outputText value="#{fila.fechaVigencia}" >
                                <f:convertDateTime type="date" />
                            </h:outputText>
                        </p:column>
                    </p:dataTable>
                </c:if>
                <c:if test="#{cc.attrs.listarSoloNoUsados == false}">
                    <p:dataTable var="fila"
                                 value="#{vistaPresupuesto.devolverPresupuestosCliente(cc.attrs.cliente)}"
                                 paginator="true"
                                 rows="10"
                                 nextPageLinkLabel="Siguiente >"
                                 lastPageLinkLabel="Último >>"
                                 previousPageLinkLabel="&lt; Anterior"
                                 firstPageLinkLabel="&lt;&lt; Primero"
                                 emptyMessage="No hay registros cargados"
                                 errorMessage="Hubo un error cargando los datos">
                        <p:column sortBy="#{fila.numero}" filterBy="#{fila.numero}" resizable="true">
                            <f:facet name="header">
                                <h:outputText value="Número" />
                            </f:facet>
                            <h:outputText value="#{fila.numero}" />
                        </p:column>
                        <p:column sortBy="#{fila.entidad.nombre}" filterBy="#{fila.entidad.nombre}" resizable="true">
                            <f:facet name="header">
                                <h:outputText value="Entidad" />
                            </f:facet>
                            <h:outputText value="#{fila.entidad.nombre}" />
                        </p:column>
                        <p:column filterBy="#{fila.fechaCreacion}">
                            <f:facet name="header">
                                <h:outputText value="Fecha" />
                            </f:facet>
                            <h:outputText value="#{fila.fechaCreacion}">
                                <f:convertDateTime type="date" />
                            </h:outputText>
                        </p:column>
                        <p:column filterBy="#{fila.fechaVigencia}">
                            <f:facet name="header">
                                <h:outputText value="Vigencia" />
                            </f:facet>
                            <h:outputText value="#{fila.fechaVigencia}" >
                                <f:convertDateTime type="date" />
                            </h:outputText>
                        </p:column>
                    </p:dataTable>
                </c:if>
            </c:if>
            <c:if test="#{cc.attrs.filtrarPorCliente == false}">
                <c:if test="#{cc.attrs.listarSoloNoUsados == true}">
                    <p:dataTable var="fila"
                                 value="#{vistaPresupuesto.devolverPresupuestosNoUsados()}"
                                 paginator="true"
                                 rows="10"
                                 nextPageLinkLabel="Siguiente >"
                                 lastPageLinkLabel="Último >>"
                                 previousPageLinkLabel="&lt; Anterior"
                                 firstPageLinkLabel="&lt;&lt; Primero"
                                 emptyMessage="No hay registros cargados"
                                 errorMessage="Hubo un error cargando los datos">
                        <p:column sortBy="#{fila.numero}" filterBy="#{fila.numero}" resizable="true">
                            <f:facet name="header">
                                <h:outputText value="Número" />
                            </f:facet>
                            <h:outputText value="#{fila.numero}" />
                        </p:column>
                        <p:column sortBy="#{fila.entidad.nombre}" filterBy="#{fila.entidad.nombre}" resizable="true">
                            <f:facet name="header">
                                <h:outputText value="Entidad" />
                            </f:facet>
                            <h:outputText value="#{fila.entidad.nombre}" />
                        </p:column>
                        <p:column filterBy="#{fila.fechaCreacion}">
                            <f:facet name="header">
                                <h:outputText value="Fecha" />
                            </f:facet>
                            <h:outputText value="#{fila.fechaCreacion}">
                                <f:convertDateTime type="date" />
                            </h:outputText>
                        </p:column>
                        <p:column filterBy="#{fila.fechaVigencia}">
                            <f:facet name="header">
                                <h:outputText value="Vigencia" />
                            </f:facet>
                            <h:outputText value="#{fila.fechaVigencia}" >
                                <f:convertDateTime type="date" />
                            </h:outputText>
                        </p:column>
                    </p:dataTable>
                </c:if>
                <c:if test="#{cc.attrs.listarSoloNoUsados == false}">
                    <p:dataTable var="fila"
                                 value="#{vistaPresupuesto.devolverPresupuestos()}"
                                 paginator="true"
                                 rows="10"
                                 nextPageLinkLabel="Siguiente >"
                                 lastPageLinkLabel="Último >>"
                                 previousPageLinkLabel="&lt; Anterior"
                                 firstPageLinkLabel="&lt;&lt; Primero"
                                 emptyMessage="No hay registros cargados"
                                 errorMessage="Hubo un error cargando los datos">
                        <p:column sortBy="#{fila.numero}" filterBy="#{fila.numero}" resizable="true">
                            <f:facet name="header">
                                <h:outputText value="Número" />
                            </f:facet>
                            <h:outputText value="#{fila.numero}" />
                        </p:column>
                        <p:column sortBy="#{fila.entidad.nombre}" filterBy="#{fila.entidad.nombre}" resizable="true">
                            <f:facet name="header">
                                <h:outputText value="Entidad" />
                            </f:facet>
                            <h:outputText value="#{fila.entidad.nombre}" />
                        </p:column>
                        <p:column filterBy="#{fila.fechaCreacion}">
                            <f:facet name="header">
                                <h:outputText value="Fecha" />
                            </f:facet>
                            <h:outputText value="#{fila.fechaCreacion}">
                                <f:convertDateTime type="date" />
                            </h:outputText>
                        </p:column>
                        <p:column filterBy="#{fila.fechaVigencia}">
                            <f:facet name="header">
                                <h:outputText value="Vigencia" />
                            </f:facet>
                            <h:outputText value="#{fila.fechaVigencia}" >
                                <f:convertDateTime type="date" />
                            </h:outputText>
                        </p:column>
                    </p:dataTable>
                </c:if>
            </c:if>
        </c:if>
    </composite:implementation>

</html>
